package com.chia.multienty.core.pojo;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.Version;
import com.chia.multienty.core.pojo.KutaBaseEntity;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 流程
 * </p>
 *
 * @author Multienty Auto Generator
 * @since 2024-06-02
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("mt_workflow_process")
@ApiModel(value="WorkflowProcess对象", description="流程")
public class WorkflowProcess extends KutaBaseEntity {


    /**
     * 流程编号
     */
    @ApiModelProperty(value = "流程编号")
    @TableId(value = "process_id", type = IdType.AUTO)
    private Long processId;

    /**
     * 租户编号
     */
    @ApiModelProperty(value = "租户编号")
    @TableField("`tenant_id`")
    private Long tenantId;

    /**
     * 应用编号
     */
    @ApiModelProperty(value = "应用编号")
    @TableField("`app_id`")
    private Long appId;

    /**
     * 流程类型
     */
    @ApiModelProperty(value = "流程类型")
    @TableField("`type`")
    private Short type;

    /**
     * 流程名称
     */
    @ApiModelProperty(value = "流程名称")
    @TableField("`name`")
    private String name;

    /**
     * 备注信息
     */
    @ApiModelProperty(value = "备注信息")
    @TableField("`remark`")
    private String remark;

    /**
     * 文件地址
     */
    @ApiModelProperty(value = "文件地址")
    @TableField("`file_url`")
    private String fileUrl;

    /**
     * 文件编号
     */
    @ApiModelProperty(value = "文件编号")
    @TableField("`file_id`")
    private Long fileId;

    /**
     * 状态
     */
    @ApiModelProperty(value = "状态")
    @TableField(value = "`status`", fill = FieldFill.INSERT)
    private String status;

    /**
     * 乐观锁版本号
     */
    @ApiModelProperty(value = "乐观锁版本号")
    @TableField(value = "`version`", fill = FieldFill.INSERT)
    @Version
    private Long version;

    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间")
    @TableField(value = "`create_time`", fill = FieldFill.INSERT)
    private LocalDateTime createTime;

    /**
     * 更新时间
     */
    @ApiModelProperty(value = "更新时间")
    @TableField(value = "`update_time`", fill = FieldFill.UPDATE)
    private LocalDateTime updateTime;

    /**
     * 已部署key
     */
    @ApiModelProperty(value = "已部署key")
    @TableField("`deployed_key`")
    private String deployedKey;

    /**
     * 已部署编号
     */
    @ApiModelProperty(value = "已部署编号")
    @TableField("`deployed_id`")
    private String deployedId;

    /**
     * 分类
     */
    @ApiModelProperty(value = "分类")
    @TableField("`category`")
    private String category;

    /**
     * 流程定义编号
     */
    @ApiModelProperty(value = "流程定义编号")
    @TableField("`process_definition_id`")
    private String processDefinitionId;


}
